Skip to main content

drmm_simple_encoder_alloc

API Overview

drmm_simple_encoder_alloc is an API in Linux kernel. This rule belongs to the return value check type. This rule is generated using APISpecGen.

Rule Description

tip

__drmm_simple_encoder_alloc returns error pointer on failure, use IS_ERR to check the return value

info
  • Tags: return value check
  • Parameter Index: N/A
  • CWE Type: CWE-253

Rule Code


import cpp
import semmle.code.cpp.controlflow.SSA


class EVPFunctionCall extends FunctionCall {
EVPFunctionCall() {
this.getTarget().hasName("__drmm_simple_encoder_alloc")
}
}


predicate isErrCheckFunction(Function f) {
f.hasName("IS_ERR")
}

from EVPFunctionCall call, ValueAccess ret
where
ret = call.getAnAccess() and
not exists(FunctionCall check |
isErrCheckFunction(check.getTarget()) and
check.getArgument(0).getAChild*() = ret
)
select call, "The return value of __drmm_simple_encoder_alloc is not checked with IS_ERR."